/**
 * Copyright 2009 Henning Teek, Ingo Renner
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package com.googlecode.bricket.plugin.mail.repository;

import java.util.List;

import org.springframework.mail.SimpleMailMessage;

import com.googlecode.bricket.plugin.mail.domain.Mailserver;
import com.googlecode.bricket.plugin.user.domain.User;
import com.googlecode.bricket.repository.BricketService;

/**
 * @author Ingo Renner
 * @author Henning Teek
 */
public interface MailService extends BricketService {
	Mailserver saveMailserver(Mailserver mailserver);
	void deleteMailserver(Mailserver mailserver);
	Mailserver loadMailserver(Long id);
	List<Mailserver> loadAllMailserver();
	boolean sendSignupMail(User user);
	boolean send(SimpleMailMessage mailMsg);
	boolean send(String server, SimpleMailMessage mailMsg);

	boolean sendMail(String from, String to, String subject, String text);
	boolean sendMail(String mailserver, String from, String to, String cc,
			String bcc, String subject, String text, boolean html);
}
